home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 039a / fc26.zip / FC.DOC next >
Text File  |  1991-06-11  |  32KB  |  711 lines

  1.  
  2.  
  3.  
  4.                                     FC Ver. 2.6
  5.                                     Mike Albert
  6.                                 Copyright (c) 1991
  7.  
  8.  
  9.  
  10.      1   INTRODUCTION
  11.  
  12.      FC compares two text files and lists the differences between them line
  13.      by line.  FC provides the following benefits:
  14.  
  15.          o   FC shows word by word differences between lines that have
  16.              changed.
  17.  
  18.          o   FC helps "C" programmers merge program changes.  FC can compare
  19.              two "C" programs containing separate sets of changes, and
  20.              combine them automatically to make a single program.
  21.  
  22.          o   FC lets you do multiple comparisons in one run.
  23.  
  24.          o   FC can ignore white space changes.  This is useful when you want
  25.              to ignore format changes in "C" programs or other text.
  26.  
  27.          o   FC never gets confused or "unsynchronized" (as some comparison
  28.              programs can).
  29.  
  30.          o   FC always finds the smallest set of differences between files,
  31.              and never misses matching lines.
  32.  
  33.          o   FC lets you list changes in ways that make sense to you by
  34.              providing multiple display options.  You can also customize FC
  35.              to use your favorite options automatically.
  36.  
  37.      If you're familiar with earlier versions of FC, look at section 7 to
  38.      learn about the enhancements.
  39.  
  40.      FC can be used on any IBM-compatible computer.  Any display adapter that
  41.      provides 80 character lines, including those with more than 25 lines per
  42.      screen, will work correctly.  FC runs under MS-DOS versions 2.0 and
  43.      later, but 3.0 or later is required to customize the default options.
  44.      The amount of memory required is dependent on file size.  100K is enough
  45.      for small files, while up to 425K is needed for large ones.  Files
  46.      containing up to 16,300 lines can be compared.
  47.  
  48.  
  49.  
  50.      2   OPERATION
  51.  
  52.      To list the differences between two ASCII text files line by line:
  53.              fc  file1  file2  options
  54.  
  55.      Changes to file1 to make file2 are listed.  Wild-card characters can be
  56.      used to do multiple comparisons.  The options are:
  57.  
  58.              -a      list all lines (whether different or the same)
  59.              -s      list only lines that are the same
  60.              -w      ignore white space differences in lines when comparing
  61.              -b      don't list redundant blank lines
  62.              -k      ignore case differences (i.e. upper vs. lower) when
  63.                      comparing
  64.  
  65.  
  66.              -i      show file equivalence only, -ib beeps when files are
  67.                      different
  68.              -f      list using an alternate format that's useful for editing
  69.              -m      merge two C programs
  70.              -c<n>   show context for changes - list up to <n> unchanged
  71.                      lines as changed when that's clearer - default <n> is 1
  72.              -d<n>   show differences between changed lines word by word -
  73.                      <n> = 1 shows minor differences, 10 shows all - default
  74.                      <n> is 5
  75.              -t<n>   tab interval is <n> characters - default interval is 8
  76.              -u      update default options, -u- clears old defaults first
  77.              >file3  put difference listing in file file3
  78.  
  79.      A default option can be turned off with a minus sign, e.g. -m- turns off
  80.      the -m option.  You can also make an option affect only screen output or
  81.      file output - an "s" after the option letter indicates screen output,
  82.      while "f" indicates file output.  E.g. -ds5 specifies that the -d5
  83.      option is used for screen output, but doesn't affect output to a file.
  84.      This feature is useful when updating default options (with the -u
  85.      option), because you often want different options for the two output
  86.      devices.
  87.  
  88.      The following examples illustrate the use of FC:
  89.  
  90.          Compare two files in the current directory and display the
  91.          differences on the screen:
  92.  
  93.              fc  prog1.asc  prog2.asc
  94.  
  95.          Compare two files in different directories and drives, list all
  96.          lines using the alternate listing format (ignoring white space
  97.          differences when comparing), and put the difference listing in file
  98.          prog2.dif:
  99.  
  100.              fc  d:\backup\prog1.asc  c:\tc\prog2.asc  -a  -f  -w  >prog2.dif
  101.  
  102.          Compare two files with the same names in different directories and
  103.          drives, and display the differences using the alternate listing
  104.          format:
  105.  
  106.              fc  -f  d:\backup\prog1.asc  c:\tc
  107.  
  108.          Compare all files with ".c" extensions and the same names in two
  109.          different directories:
  110.  
  111.              fc  \backup\*.c  \tc\*.*
  112.  
  113.          Merge two "C" programs to make a single combined program:
  114.  
  115.              fc  dbupdat1.c  dbupdat2.c  -m  >dbupdat3.c
  116.  
  117.          Change the default options for future invocations of FC to -w -c -b
  118.          for output to either output device, and -d5 for output to the
  119.          screen:
  120.  
  121.              fc  -u-  -w  -c  -b  -ds5
  122.  
  123.          Turn off the -w default option (which was previously set) for output
  124.          to a file, but leave it on for screen output:
  125.  
  126.              fc  -u  -wf-
  127.  
  128.  
  129.      3   DETAILED OPERATION
  130.  
  131.      The arguments to FC (files and options) can be supplied in any order.
  132.      The options work as follows:
  133.  
  134.          -a      All - FC normally lists only the lines that differ between
  135.                  the two files.  With the -a option, matching lines are also
  136.                  listed.
  137.  
  138.          -s      Same - With the -s option, only matching lines are listed.
  139.  
  140.          -w      White space - FC normally lists lines as different if any
  141.                  character in the line (except trailing white space) is
  142.                  different.  With this option, differences in embedded white
  143.                  space (i.e. space and tab characters) are ignored.  This is
  144.                  useful when you want to ignore differences in the layout of
  145.                  programs or documents.  FC knows about "C" language syntax,
  146.                  so that only white space that is ignored by a "C" compiler
  147.                  is ignored by FC.
  148.  
  149.          -b      Blanks - FC normally lists all lines that have changed.
  150.                  With this option, redundant blank lines (i.e. more than one
  151.                  blank line in a row, or blank lines leading or trailing a
  152.                  group of changes) aren't shown.
  153.  
  154.          -k      Case - FC normally treats upper and lower case letters as
  155.                  different when comparing lines.  With this option, the upper
  156.                  and lower case versions of each letter are considered to be
  157.                  equivalent.
  158.  
  159.          -i      Identity - FC normally lists line by line differences
  160.                  between the two files.  With the -i option, FC compares the
  161.                  files byte by byte, and only indicates whether or not the
  162.                  files are identical.  The files are considered identical
  163.                  only if they are the same length, and each byte of the first
  164.                  file equals the corresponding byte in the second.  There is
  165.                  no limit on the size of the files you can compare when this
  166.                  option is used.
  167.  
  168.          -ib     Identity beep - This option is identical to the -i option,
  169.                  except that FC also beeps when it finds nonidentical files.
  170.  
  171.          -f      Format - This option directs FC to list changes using a
  172.                  different format that doesn't indent, and shows the line
  173.                  numbers of changes in both files.  This format is useful
  174.                  when directing the listing to a file used to re-create
  175.                  changes.
  176.  
  177.          -m      Merge format - FC merges two "C" programs into a single
  178.                  program when this option is used.  The new file can be
  179.                  compiled as the first program, the second program, or the
  180.                  combination of the two.  When you #define the symbol
  181.                  FC_FILE_1, lines present in the first file are included.
  182.                  FC_FILE_2 does the same thing for the second file.  If you
  183.                  specify both #define's, lines from both programs are
  184.                  included.  This feature is particularly useful when
  185.                  combining two separate sets of changes to a program.  You
  186.                  merge the two changed programs, examine the combined
  187.                  program, and remove the #ifdef's to complete the merge.  In
  188.                  most cases the #ifdef's can be removed without incident.
  189.                  Where there are conflicts between the two sets of changes,
  190.  
  191.  
  192.                  you can resolve them as needed.  If you feel brave, you can
  193.                  compile the merged program with both #define's specified and
  194.                  see if it works.  The merge does not always produce a
  195.                  compilable program - if the changes involve comments,
  196.                  #ifdef's, or multiline #define's, the #ifdef's inserted can
  197.                  conflict with them.
  198.  
  199.          -c<n>   Context - When this option is used, FC shows context
  200.                  surrounding changes to make the listing more readable.  This
  201.                  is done by listing unchanged lines as changed when they are
  202.                  between changed lines.  Use this option when you want to
  203.                  make the listing easier to understand, and don't care if a
  204.                  few unchanged lines are listed as changed.  The value <n>
  205.                  indicates how many unchanged lines can be listed as changed.
  206.                  An <n> of 1 or 2 is usually sufficient.  The default value
  207.                  of <n> is 1.
  208.  
  209.          -d<n>   Differences - Show differences between changed lines word by
  210.                  word.  If the listing is shown on the screen, differences
  211.                  are identified by reverse video.  If the listing is directed
  212.                  to an output file, changes are enclosed in curly brackets
  213.                  (i.e. "{}").  The value of <n> indicates which differences
  214.                  are shown - this is useful because showing the differences
  215.                  between totally different lines is confusing.  An <n> of 1
  216.                  shows only minor differences, while 10 shows all.  The
  217.                  default value of <n> is 5.
  218.  
  219.          -t<n>   Tab interval - This option sets the tab interval used to
  220.                  expand tabs when comparing and listing lines.  The default
  221.                  interval is 8.
  222.  
  223.          -u      Update - This feature updates the default options.  You can
  224.                  use this option to make your favorite options the default,
  225.                  so you don't have to enter them every time you use FC.  When
  226.                  you use the -u option, the current options (i.e. the current
  227.                  defaults plus options specified on the command line) become
  228.                  the default.  The -u- option is like -u, except that the
  229.                  current defaults are ignored - only the options shown on the
  230.                  command line become the new defaults.  FC can't update the
  231.                  options and compare files in the same run, so don't specify
  232.                  file names when you use the -u or -u- option.  This feature
  233.                  works by changing the program (i.e. fc.exe) file.  If you
  234.                  want, you can make multiple FC's with different default
  235.                  options by simply copying the fc.exe file with a new name
  236.                  (e.g. fcmerge.exe) and using the -u option to set the
  237.                  default values of the copy.  This feature only works with
  238.                  MS-DOS version 3.0 or later.
  239.  
  240.          >file   FC normally displays the difference listing on the screen.
  241.            or    This option directs the listing to the file you specify -
  242.          >>file  just enter the file name after the ">".  If the file already
  243.                  exists, it is overwritten.  The ">>" option can be used in
  244.                  the same way to append the listing to the end of a file,
  245.                  instead of overwriting it.
  246.  
  247.  
  248.      The file names specify a drive and directory in the normal MS-DOS
  249.      manner.  If no drive is specified, FC looks for files on the current
  250.      drive.  If no directory is specified, FC looks in the current directory.
  251.      The standard MS-DOS wild-card characters may be used to compare multiple
  252.      files.  When FC finds wild-card characters in the first file name, it
  253.  
  254.  
  255.      performs a compare for each matching file.  A wild-card character in the
  256.      second name means use the name (or extension) of the first file.  If the
  257.      second file is not found FC indicates it is missing, and continues with
  258.      other files that match the first name.  If you specify a directory or
  259.      drive (without a file name and extension) for either the first or second
  260.      name, FC acts as though you specified a file and extension of "*.*".
  261.      The following examples illustrate these principles:
  262.  
  263.          Compare all files with ".c" extensions and the same names in two
  264.          different directories:
  265.  
  266.              fc  \backup\*.c  \tc
  267.  
  268.          Compare files fcupdate.c1 and fcupdate.c2:
  269.  
  270.              fc  fcupdate.c1  *.c2
  271.  
  272.          Compare all files in the current directory with ".c1" extensions
  273.          with files that have the same names and ".c2" extensions in the same
  274.          directory:
  275.  
  276.              fc  *.c1  *.c2
  277.  
  278.          Compare all files in current directory with files that have the same
  279.          names on the diskette in drive b:
  280.  
  281.              fc  .  b:
  282.  
  283.          Compare all files with names starting with "a" and having a ".c"
  284.          extension with files that have the same names in the directory
  285.          "work" that is a subdirectory of the parent directory of the current
  286.          directory:
  287.  
  288.              fc  \backup\a*.c  ..\work
  289.  
  290.  
  291.      The files you compare must contain ASCII text.  Displayable characters
  292.      with values above hex 7F will also be processed correctly.  All
  293.      characters except values 00, 07, and 08 (null, backspace, and bell) are
  294.      passed through to the difference listing.  Character value 09 (tab) is
  295.      passed through with the -f and -m formats, but expanded to spaces (as
  296.      specified with the -t option) with the normal format.  FC expands tabs
  297.      as specified in the -t option and removes trailing white space on each
  298.      line before comparing.  If two lines differ only in this regard, FC will
  299.      report that they are the same.  Other control characters (e.g. vertical
  300.      tabs, page breaks) are not changed before comparing.
  301.  
  302.      Lines can end with carriage return characters (hex value 0D), new line
  303.      characters (hex value 0A), or both characters together.  FC ignores line
  304.      ending characters when comparing, so identical lines with different
  305.      ending characters are listed as unchanged.  Lines in the difference
  306.      listing always end with a carriage return followed by a new line.
  307.  
  308.      FC only processes lines of up to 2,000 characters.  If FC encounters a
  309.      longer line, it breaks it after the 2,000th character to make two
  310.      separate lines.
  311.  
  312.      The preceding paragraphs that describe how characters and lines are
  313.      compared and displayed don't pertain when the -i option (indicate file
  314.      equivalence only) is used.  With the -i option, files are compared byte
  315.      by byte for equality, and line differences aren't listed.
  316.  
  317.  
  318.      If you display the difference listing on the screen, you can control the
  319.      scrolling.  When FC is scrolling, pressing any key makes it pause.  When
  320.      it pauses, you can use the following keys:
  321.  
  322.          Enter   Show another screen full
  323.          space   Show one more line
  324.          s       Scroll continuously
  325.          ESC     Exit the program
  326.  
  327.      You can also use the Ctrl-S and Ctrl-Q keys (the ASCII terminal
  328.      convention) to regulate scrolling if you prefer.
  329.  
  330.  
  331.  
  332.      4   FC MESSAGES
  333.  
  334.          Error: argument -<x> is invalid
  335.              FC couldn't recognize the argument you specified on the command
  336.              line (argument <x>).  Check the list of arguments that FC
  337.              accepts to determine what options you can use.  You can list the
  338.              options FC recognizes by typing "fc ?".
  339.  
  340.          Error: suboption <s> of option -<x> is wrong
  341.              FC couldn't recognize the suboption <s> specified with the <x>
  342.              option on the command line.  Most suboptions are a single
  343.              letter, e.g. suboption b of option i is specified as -ib.  An
  344.              example of the same suboption specified for screen display only
  345.              is -isb.  Check the list of options and suboptions that FC
  346.              accepts to determine what you can use.  You can list the options
  347.              and suboptions FC recognizes by typing "fc ?".
  348.  
  349.          Error: the -<x> option value <v> is wrong
  350.              FC couldn't recognize the value <v> specified with the <x>
  351.              option on the command line.  Most options accept one or two
  352.              decimal digits, e.g. -t8 to specify a tab increment of 8.  An
  353.              example of a value specified for screen display only is -ds5.
  354.              Check the list of options that FC accepts to determine what
  355.              values you can use.  You can list the options and values FC
  356.              recognizes by typing "fc ?".
  357.  
  358.          Error: option -<x> doesn't accept a value
  359.              FC found a value specified for option <x>, but that option
  360.              doesn't accept a value.  You can list the options FC recognizes
  361.              by typing "fc ?".
  362.  
  363.          Error: both -<x> and -<y> options specified together
  364.              FC found two incompatible options (<x> and <y>) specified on the
  365.              command line.  You can only use one at a time.
  366.  
  367.          Warning: -<x> default option ignored because -<y> option specified
  368.              FC found an option (argument <x>) on the command line that
  369.              conflicts with default option <y>.  FC ignored the default
  370.              option.
  371.  
  372.          Warning: -<x> option ignored because it conflicts with -<y> default
  373.          option
  374.              FC found an option (argument <x>) on the command line that
  375.              conflicts with default option <y>.  FC ignored the option on the
  376.              command line.
  377.  
  378.  
  379.          Error: <n> is too small a value for option -<x> - the lower limit
  380.          is <m>
  381.              FC found a value (<n>) specified for option <x> that is too
  382.              small.  You must specify a value greater than or equal to <m>.
  383.  
  384.          Error: <n> is too large a value for option -<x> - the limit is <m>
  385.              FC found a value (<n>) specified for option <x> that is too
  386.              large.  You must specify a value less than or equal to <m>.
  387.  
  388.          Error: more than two file names specified
  389.          Error: fewer than two file names specified
  390.              FC didn't find the names of two files to compare on the command
  391.              line.  If you forgot to specify the minus sign ("-") in front of
  392.              an option, FC interpreted it as a file name.  You must specify
  393.              two file names.
  394.  
  395.          Error: file <f> wasn't found
  396.              FC couldn't find file <f>.  If you didn't specify a directory or
  397.              drive, FC looked in the current directory and drive.  Make sure
  398.              you specify the correct file name, with the directory and drive
  399.              if needed, on the command line.
  400.  
  401.          Error: no files found at <f>
  402.              FC couldn't find any files in directory or drive <f>.  Make sure
  403.              you specify the correct drive and directory on the command line.
  404.  
  405.          Error: no files match <f>
  406.              FC couldn't find any files that matched file name <f>, which
  407.              contains wild-card characters.  Make sure you specify the
  408.              correct file name on the command line.
  409.  
  410.          Error: more than 16,300 lines in file <f>
  411.              File <f> contains more than 16,300 lines.  FC can only process
  412.              files containing up to 16,300 lines.  Your only option is to
  413.              break your files into smaller files.
  414.  
  415.          Error: not enough memory to process these files
  416.              FC needs more memory to process these files than is available.
  417.              FC will continue by comparing the remaining files if you
  418.              specified multiple comparisons, otherwise it will terminate.
  419.              The only way to correct this problem is to run on a machine with
  420.              more memory, remove any memory-resident programs, or to split
  421.              the file into smaller files.  This problem only occurs when
  422.              comparing large files on machines with small memory
  423.              configurations.
  424.  
  425.          Warning: Not enough memory to show word differences in the following
  426.          change
  427.              FC needs more memory to list the word-by-word differences
  428.              between a set of changed lines (as requested with the -d option)
  429.              than is available.  FC will not list word-by-word differences
  430.              for this set of lines, but will with others.  This problem only
  431.              occurs when comparing large files on machines with small memory
  432.              configurations.
  433.  
  434.          Error: output failed, disk probably full
  435.              FC detected an error when writing a file.  This only occurs when
  436.              the difference listing is directed to a file with the ">" or
  437.              ">>" options.  The most likely cause of this error is a full
  438.              disk.
  439.  
  440.  
  441.          Error: file names can't be used with the -u option
  442.              FC found file names specified on the command line with the -u or
  443.              -u- option.  You can't update default options and compare files
  444.              at the same time.
  445.  
  446.          Error: couldn't update default options
  447.              FC couldn't write to the program (i.e. fc.exe) file to update
  448.              the default options.  This happens when the fc.exe file is on a
  449.              write-protected floppy disk, the file has been given the read-
  450.              only attribute, you're using an MS-DOS version less than 3.0, or
  451.              the file is on a network server and you don't have write
  452.              privileges for the file.
  453.  
  454.  
  455.  
  456.      5   LICENSING, WARRANTY, and REGISTRATION
  457.  
  458.      FC is distributed as shareware.  I encourage you to try FC and share it
  459.      with friends as long as:
  460.  
  461.          The FC program and this documentation file are not modified and are
  462.          distributed together.
  463.  
  464.          FC is not provided as a part of any other product.
  465.  
  466.          No fees, beyond a reasonable fee for media, duplication, or
  467.          downloading costs, are charged.
  468.  
  469.          FC is not used for commercial, government, or business purposes
  470.          without registration.  Each registration is for a single person or a
  471.          single computer.
  472.  
  473.      If you find FC useful and decide to use it regularly, you are required
  474.      to register.  All registration payments will be donated to Oxfam
  475.      America, an international development and disaster relief agency.  It's
  476.      a worthy charity that I've been supporting for many years.  For more
  477.      information on Oxfam see section 6.
  478.  
  479.      When you register you get the satisfaction of saving lives in Africa,
  480.      Asia, and South America, and encourage me to produce more software at
  481.      reasonable prices.  You also get the following benefits:
  482.  
  483.          I'll notify you of new FC versions when they become available.
  484.  
  485.          I'll send an updated version of FC to you at no additional cost.
  486.          You can request this at any time.  I'll do this once per registered
  487.          user.
  488.  
  489.          I'll answer any questions you have on FC and its use.  You can
  490.          contact me at the address shown below - I'll respond in writing or
  491.          by phone.
  492.  
  493.          If any important bugs are found I will notify you.
  494.  
  495.          I'll make an attempt (but can't guarantee) to fix any problems you
  496.          find.
  497.  
  498.      Registration is $25.  Please make your check payable to Oxfam America -
  499.      I'll send your checks to Oxfam and record your registration information.
  500.      I'll also accept original canceled checks or receipts from Oxfam that
  501.  
  502.  
  503.      list you as the donor.  Please send payments, registration information,
  504.      and any other correspondence to:
  505.  
  506.                   Mike Albert
  507.                   Suite 42
  508.                   P. O. Box 2100
  509.                   Chelmsford, MA   01824
  510.  
  511.      Anyone can order the latest version of FC directly from me for a fee of
  512.      $5.00.  Just send the order (make sure it contains your mailing address)
  513.      with your check to the above address.  You'll receive a 5 1/4 inch 360Kb
  514.      floppy disk containing the executable and documentation files.  If you
  515.      need other formats (5 1/4 inch 1.2Mb or 3 1/2 inch 1.44Mb) I can provide
  516.      them.  I'll also include other shareware products I produce.  If you
  517.      live outside North America, please send extra money for the increased
  518.      postage.
  519.  
  520.      I welcome all comments and suggestions concerning FC.  I'd like to know
  521.      how you are using FC, where you obtained it, and what problems, bugs, or
  522.      weaknesses you find.  If you tell me about enhancements or changes
  523.      you're interested in, I'll make an effort to provide them.
  524.  
  525.      This program is provided "as is" without warranty of any kind, either
  526.      express or implied, but not limited to the implied warranties of
  527.      merchantability or fitness for a particular purpose.  The entire risk as
  528.      to the results and performance of the program is assumed by the user.
  529.      Should the program prove defective, the user assumes the entire cost of
  530.      all necessary servicing, repair, or correction.
  531.  
  532.  
  533.  
  534.      6   OXFAM AMERICA
  535.  
  536.      As stated in Oxfam literature,
  537.  
  538.          "Oxfam America is an international agency that funds self-help
  539.          development projects and disaster relief in poor countries in
  540.          Africa, Asia, and Latin America, and also prepares and distributes
  541.          educational materials for people in the United States on the issues
  542.          of development and hunger.  The name "Oxfam" comes from the Oxford
  543.          Committee for Famine Relief, founded in England in 1942.  Oxfam
  544.          America, based in Boston, was formed in 1970, and is one of seven
  545.          autonomous Oxfams around the world (Great Britain, Australia,
  546.          Belgium, Canada, Quebec, Hong Kong and the United States).  Oxfam is
  547.          a nonsectarian, nonprofit agency that neither seeks or accepts U.S.
  548.          government funds.  All contributions are tax-deductible to the
  549.          extent permitted by law."
  550.  
  551.      For more information, you can phone Oxfam at 617-482-1211, or write to
  552.      them at:
  553.  
  554.                   Oxfam America
  555.                   115 Broadway
  556.                   Boston, MA  02116
  557.  
  558.  
  559.      7   FC REVISION HISTORY
  560.  
  561.          FC version 2.6 - 6/11/91
  562.  
  563.              Corrected minor problems.
  564.  
  565.  
  566.          FC version 2.5 - 5/23/91
  567.  
  568.              Added -i and -ib options to test if files are equivalent.
  569.  
  570.              Fixed problem processing directories with extensions.
  571.  
  572.              Improved warning messages and error checking.
  573.  
  574.              Ensured that spurious keystrokes are ignored during screen
  575.              display.
  576.  
  577.  
  578.          FC version 2.4 - 1/28/91
  579.  
  580.              Added support of output to screens with more than 25 lines.
  581.  
  582.              Fixed minor errors.
  583.  
  584.  
  585.          FC version 2.3 - 12/30/90
  586.  
  587.              Added -k option to ignore case differences when comparing lines.
  588.  
  589.  
  590.          FC version 2.2 - 6/5/90
  591.  
  592.              Increased the speed - some comparisons take only 60% as long as
  593.              previous versions.
  594.  
  595.              Fixed a problem displaying per word changes in very long lines
  596.              (around 2000 characters).
  597.  
  598.              Fixed a problem that occurred when '.' was used to indicate a
  599.              directory.
  600.  
  601.              Fixed error in handling Ctrl-C when display scrolling is paused.
  602.  
  603.  
  604.          FC version 2.1 - 4/29/90
  605.  
  606.              Altered the difference computation for word changes within lines
  607.              to pick more intuitive changes.  In some cases there's more than
  608.              one set of minimal changes.  Version 2.0 could pick differences
  609.              that were minimal, but difficult to understand.
  610.  
  611.              Increased the speed.
  612.  
  613.              Fixed a problem in which characters with values above 127 were
  614.              sometimes treated as spaces when comparing.
  615.  
  616.              Fixed a minor formatting problem with the difference listing
  617.              produced with the -m option.
  618.  
  619.  
  620.              Fixed a minor problem that occurred when another program invoked
  621.              FC and input redirection was used.
  622.  
  623.  
  624.          FC version 2.0 - 3/21/90
  625.  
  626.              Added -d option to show word-by-word differences between changed
  627.              lines.
  628.  
  629.              Added -m option to merge two "C" source programs.
  630.  
  631.              Added comparison of multiple files in a single run - this is
  632.              invoked by specifying wild-card characters in file names.
  633.  
  634.              Added -w option to ignore white space differences when
  635.              comparing.
  636.  
  637.              Added -b option to not show redundant blank lines in difference
  638.              listing.
  639.  
  640.              Added -c option to show changes in context.
  641.  
  642.              Added -u option to let the user set default options.
  643.  
  644.              Added -f option to produce a new format for the difference
  645.              listing.
  646.  
  647.              Increased the speed - some comparisons take only half the time
  648.              of the previous version.
  649.  
  650.              Added separate sets of options that are selected based on the
  651.              output device, i.e. the screen or a redirected output file.
  652.  
  653.              Altered the difference computation to pick more intuitive
  654.              changes.  In some cases there's more than one set of minimal
  655.              changes.  Previous FC versions could pick differences that were
  656.              minimal, but difficult to understand.
  657.  
  658.              Added support of Ctrl-S and Ctrl-Q to suspend and resume display
  659.              scrolling.
  660.  
  661.              Added support of files that use carriage return characters
  662.              (instead of new line characters) to end lines.
  663.  
  664.  
  665.          FC version 1.3 - 7/10/89
  666.  
  667.              Corrected problem in which matching lines occasionally were
  668.              listed as different.
  669.  
  670.              Added -s option to list only lines that match.
  671.  
  672.  
  673.          FC version 1.2 - 3/20/89
  674.  
  675.              Increased speed.
  676.  
  677.              Increased number of lines that can be compared - from 8,000 to
  678.              16,300.
  679.  
  680.              Increased maximum line length from 1000 to 2000 characters.
  681.  
  682.  
  683.              Added display of characters with values above 7F.  This is
  684.              particularly useful for non-English text.
  685.  
  686.              Fixed bug that occurred when processing a very large (around
  687.              8,000 line) file - FC would incorrectly report that there was
  688.              insufficient memory to process the file.
  689.  
  690.              Removed testing for Ctrl-Z (MSDOS end of file marker) in the
  691.              middle of a file - Ctrl-Z is now compared and displayed just
  692.              like other characters.
  693.  
  694.  
  695.          FC version 1.1 - 2/16/89
  696.  
  697.              Added documentation (that you're reading now).
  698.  
  699.              Added interactive control of screen display.
  700.  
  701.              Changed informational and usage messages displayed by program.
  702.  
  703.              Corrected problem that occurred when long lines were displayed.
  704.  
  705.              Added accept of Ctrl-C during file read.
  706.  
  707.  
  708.          FC version 1.0 - 1/9/89
  709.  
  710.              Initial release of FC program.
  711.